home *** CD-ROM | disk | FTP | other *** search
/ Univers Interactif 3 / INTERACTIF.BIN / mac / Planete.net / Internet Confirmés_Vrac / NetRPG 1.42 ƒ.sit / NetRPG 1.42 ƒ / Chat Docs / Chat Documentation next >
Text File  |  1994-11-13  |  17KB  |  428 lines

  1. ****************************
  2.  
  3. This is a the documentation for Chat - an TCP/IP Chat Server for the Mac.
  4. It was originally written by Peter N. Lewis. Extensive modifications by me
  5. have turned it into version 2.
  6.  
  7. If anyone would like to write some better documentation for Chat 2.0 -
  8. please do so and send it to me - I just do not have the time to do it.
  9.  
  10. Email any comments/suggestions/complaints/etc. to:  nneul@umr.edu
  11.  
  12. This software is shareware - if you want to distribute it on any commercial
  13. medium (information services, CD, etc.) contact me first - I would 
  14. appreciate a sample copy of the CD for example.
  15.  
  16. The latest version of Chat and it source are available on my ftp site:
  17. pluto.cc.umr.edu   in    /pub/chat-20x
  18.  
  19. I would appreciate a note from anyone who has done anything interesting 
  20. with the source - and before anyone redistributes any derivative works. 
  21. Also, please let me know if you are using the Chat room for something - 
  22. I'd like to know it's worth it.
  23.  
  24. Enjoy...
  25.  
  26. -- Nathan Neulinger (nneul@umr.edu)
  27.  
  28.  
  29. **** WHATS NEW IN 2.0.4 ****
  30.  
  31. Also, a beep has been added that is sounded when you receive a page.
  32.  
  33. The About box has been changed. 
  34.  
  35. Chat is now distributed by default with log files for all channels turned 
  36. off, this can be easily changed by filling in file names.
  37.  
  38. The problem with Chat not quitting when you shut down or restart has been 
  39. fixed. For you programmer types out there - let this be a lesson to you: 
  40. "Never name the Quit item in your file menu anything other than 'Quit' - it 
  41. was 'Quit Chat Room'".
  42.  
  43. **** WHATS NEW IN 2.0.3 ****
  44.  
  45. You can now switch between Foreground Only and Background Only versions 
  46. of the Chat Room by simply changing the Background only bit in the size
  47. resource. Thanks to Peter Lewis for providing the code to make this 
  48. possible. To cut down on size, the Chat room will be distributed in the 
  49. foreground only mode.
  50.  
  51. The utilities menu has been enabled. Features available in utilities menu:
  52.     Disabling User Passwords
  53.     Disabling Logins
  54.     Disabling Whispers
  55.     Disabling Yells
  56.     
  57. Default settings for these options are read in from the 'CPrf' resource 
  58. in the application. A 'TMPL' for editing this resource is also present. 
  59. The default port has been moved from a STR resource to the preferences 
  60. resource. The setting of disabling user passwords is restricted if their 
  61. are no passwords present in the file.
  62.  
  63. A new administrator command has been added - \SET to allow setting of 
  64. those disabled options from within the chat room. For example - with the 
  65. default admin password of "admin". The command "\SET admin logins off" 
  66. will disable any new logins. Typing "\SET admin" will list the options.
  67.  
  68. A new die rolling routine has been added - allows easy selection of 
  69. different die configurations in the standard roll playing notation such as
  70. 2d20 to roll 2 twenty sided dice. 
  71.  
  72. **** WHATS NEW IN 2.0.2 ****
  73.  
  74. By popular demand -  I have reverted to Chat being a BackGround only 
  75. application. However, instead of it only being background only, you have
  76. the choice. Two applications are distributed with the archive. The (BG) one
  77. is Background Only. The (FG) is Foreground Only. 
  78.  
  79. The only difference between the two is the "Only Background" bit in the 
  80. SIZE resource, and the 0 or 1 value in Str #3 in the Globals string
  81. resource. I know it is a cheap way to program it, but I don't have all 
  82. that much time to work on it. If anyone would like to write me a small 
  83. little piece of Pascal code that would check to see what the Background
  84. Only bit is, please do.
  85.  
  86. Plans for 2.0.3 - someone sent me some new code for the die rolling 
  87. routines. Will put that in as soon as I have a chance to rewrite it to 
  88. match the style of the rest of the program. Thanks to Erich at UIUC
  89. for the new code. 
  90.  
  91. Other Concerns: Chat logs can be placed in a specific location by 
  92. typing the full path in the ChannelLogNames string resource. 
  93. Eg. "HD 80:Chat Logs:Channel 1 Log" for example. Without the quotes! :)
  94.  
  95. There is still a problem with Chat crashing after running for an extended 
  96. time. So far - this appears to only affect Chat - it doesn't seem to bother
  97. any other programs that are running.
  98.  
  99. Chat has been successfully tested and run under A/UX 3.0.1. 
  100.  
  101. **** WHATS NEW IN 2.0.1 ****
  102.  
  103. Added the capability for leaving the user passwords string resource
  104. empty. Now, if there is nothing in the user passwords string resource
  105. the chat room will not ask for a user password on login.
  106.  
  107. Also fixed a small bug - well, didn't actually fix it, just turned off
  108. Pascal Range Checking in the compile. Problem caused Chat to crash on
  109. any machine not running MacsBug. 
  110.  
  111. **** WHATS NEW IN 2.0 ****
  112.  
  113. This is a new and improved version of Peter N. Lewis's Chat 1.1 
  114. Macintosh TCP/IP Chat Server. It now supports changing of channels,
  115. changing of user names, and many other nifty features. To customize
  116. it you will need to use ResEdit - most of the program's strings are 
  117. contained
  118. in resources so it can be customized rather extensively.
  119.  
  120. New Commands:
  121.  User Help                               /HELP
  122.  Changing channel                        /CHANNEL ch-name
  123.  Whispering to another user              /WHISPER user
  124.  Yelling to all channels                 /YELL msg
  125.  Change your name                        /SET NAME newname
  126.  Page a user to your channel             /PAGE user
  127.  List users on all channels              /LISTALL
  128.  List users on current channel only      /LIST
  129.  Rolling dice (for games I suppose)      /DICE count
  130.  
  131.  Hiding from other users (Admin Only)    \HIDE admin-pswd
  132.  Unhideing from other users (Admin Only) \UNHIDE admin-pswd
  133.  Disconnect A User (Admin Only)          \KILL admin-pswd user
  134.  Disconnect All (Admin Only)             \RESTART admin-pswd
  135.  Administrator Help                      \HELP
  136.  User and Administrator Passwords
  137.  
  138.  
  139. The default TCP port to connect to: 1420
  140. The default user password for Chat 2.0 is "permission".
  141. The default admin password for Chat 2.0 is "admin".
  142.  
  143. A sample telnet session to the chat server is enclosed.
  144.  
  145. *************************************************************************
  146. The following is the documentation enclosed w/ Chat 1.1.0. 
  147. *************************************************************************
  148.  
  149. Chat 1.1.0 ⌐ Peter N Lewis, Mar 1992.
  150. This program is free, but I retain the copyright on it.
  151.  
  152. This program was initially written to assist in the online meetings of the 
  153. TopSoft group, a group of mac programmers on the Internet, dedicated to 
  154. producing free, high quality software and sample code.  To get more 
  155. information about this group, ftp to syrinx.kgs.ukans.edu and check out 
  156. the /topsoft directory, or send some mail to 
  157. ts-request@syrinx.kgs.ukans.edu and ask to be added to the mailing list.
  158.  
  159. Ñ Contents
  160.  
  161.       What Chat Does
  162.       Using Chat
  163.       Customising Chat
  164.       How It Works
  165.       Limitations
  166.       Small Print
  167.       Warranty
  168.       Fine Print
  169.       Version History
  170.       The Author
  171.  
  172. Ñ What Chat Does
  173.  
  174. Chat is a background only application that lets Macs with MacTCP 1.1 serve 
  175. as a very primitive IRC.  Once Chat is running on your mac, multiple 
  176. people can Telnet to port 1420 on your mac and have online discussions .  
  177. Chat has no macintosh user interface, the only way to use it is by 
  178. telneting to your mac.  I wrote this to hold the weekly online meetings of 
  179. the TopSoft group, which have proved very successful.   Chat can support 
  180. upwards of 12 users with the current memory partition (200k), and can 
  181. support an arbitrarily large number of users given enough memory (though 
  182. MacTCP will probably blow up if you try too many :-).  Add about 5 or 10k 
  183. for each extra users you want.
  184.  
  185. Ñ Using Chat
  186.  
  187. You must have MacTCP 1.1 installed in order to use Chat.
  188.  
  189. Put Chat or an alias to it in the Startup Folder (System 7) or make it a 
  190. startup application (System 6 - note you will have to use "Selected 
  191. Applications and DAs" since background only applications are not counted 
  192. as Open Applications under System 6).  Double-Click Chat to get it started 
  193. now.
  194.  
  195. Now you need to connect to Chat using NCSA/Telnet, MUDDweller, telnet on 
  196. unix or VMS machines or some other method...
  197.  
  198. NCSA/Telnet:
  199. Choose Open Connection from the File Menu, type in the name (or IP number) 
  200. of your mac, a space and then the port number (1420).
  201.  
  202. MUDDweller:
  203. Choose New, then choose TCP/IP Address from the configure menu and type in 
  204. the ip numbers of your mac (or the name for newer versions of MUDDweller), 
  205. and the port number (1420).  Hit OK, and then choose Open Connection from 
  206. the Configure menu.
  207.  
  208. Unix:
  209. telnet <macname or ip number> 1420
  210.  
  211. VMS:
  212. telnet <macname or ip number> /port=1420
  213.  
  214. When you connect, it will ask you for a channel.  Channels are defined in 
  215. a STR# resource inside chat (no, I'm not going to make a fancy UI for 
  216. editing it).  By default, there are two channels, ╥normal╙ and ╥nolog╙.  
  217. The normal channel is logged to Normal Log on your system volume.  The 
  218. nolog channel is not logged (obviously :-).  After that it will ask you 
  219. for your name.  You are now logged in, but Chat is very boring with only 
  220. one person logged in, so get someone else to log in as well, or log in 
  221. yourself several times.  From now on anything you type will be echoed to 
  222. all other users in a format like this:
  223.  
  224. I type ╥Hello╙, and others would see:
  225. PeterL: Hello
  226.  
  227. Here is a sample session:
  228.  
  229. **** Sample Session ****
  230. unixprompt> telnet mymac 1420
  231. Welcome to Peter's Private Party Line.
  232. Select a channel ("normal" is a good bet):normal
  233. Enter your name:PeterL
  234. Welcome.  Commands start with a  slash (/), everything else goes to the 
  235. channel.
  236. Warning: Everything said is logged and may be used against you.
  237. /LIST
  238. FredB
  239. Hi Fred, whats up?
  240. FredB: Ahh, Peter you showed up.  Nothing much, usual stuff.
  241. FredB: How's Chat coming along?
  242. FredB: How is Chat coming along?
  243. ****
  244.  
  245. Here, I typed the lines:
  246. telnet mymac 1420
  247. normal (third line)
  248. PeterL (fourth line)
  249. Hi Fred, whats up?
  250.  
  251. Try it out, you╒ll get the idea pretty quick.
  252.  
  253. There are several commands, they all start with a slash (/), to get a 
  254. list, just type "/<return>":
  255.  
  256. ****
  257. /
  258. Bad command.  Commands are:
  259. /QUIT - exit chat, but why would you want to leave?
  260. /LIST - display a list of people on this channel.
  261. /DO <action> - display an action like "Yourname <action>"
  262. /ME <action> - same as /DO
  263. /SET <variable> <value> - set a variable (eg /SET echo true)
  264. everything else is sent to everyone on the channel.
  265. ****
  266.  
  267. There is also a silent command which only the owner should use, QUITNOW 
  268. (case IS relevant), which closes the server down.  Don╒t use this on 
  269. someone else╒s server!  As the owner, you can change this command by 
  270. changing the Globals STR#, but you probably wont need to, since no one 
  271. reads the documentation anyway, they'll never find out about it :-)
  272.  
  273. There is no way to change channels once you are on, or to listen in on 
  274. more than one channel at once (except by connecting to the server more 
  275. than once of course).
  276.  
  277. Ñ Customising Chat
  278.  
  279. You can customise Chat by using ResEdit to change the STR# resource which 
  280. contains the port number, the channel names, and log names, the Chat Log 
  281. creator, the commands, and all the strings that Chat produces.
  282.  
  283. Ñ How It Works
  284.  
  285. Chat is a very simple program, I wrote it in about three hours, plus I've 
  286. done about a dozen more hours neatifying it, and a couple hours getting it 
  287. ready to send out.  The entire program (ignoring the TCP and other 
  288. libraries) is only a couple hundred lines, and as such should be a good 
  289. starting sample code for writing TCP applications (the pascal source code 
  290. will be sent out as with most of my programs).
  291.  
  292. All it does is listen to the TCP port specified in the STR# resource.  
  293. When it gets a new connection it starts up another listener, and deals 
  294. with the user, first getting their channel and name, and then echoing all 
  295. their messages to the other users on that channel.  It does this by 
  296. keeping a list of all currently logged on users, when a line comes in from 
  297. one user, it goes thru the list and echoes it (with the user╒s name 
  298. prepended) to all other users with the same channel.
  299.  
  300. Ñ Limitations
  301.  
  302. Chat probably require the 128k ROM and System version 6.0 or higher.  It 
  303. may well only work with a Mac IIsi (not mine)-:, and System 7.0.  It 
  304. definitely requires MacTCP v1.1 or better yet 1.1.1.
  305.  
  306. There are several caveats.  Second, in a ╥crowded room╙, you may have 
  307. troubles with people all speaking at once (which is not a real problem for 
  308. users using MUDDweller, but mucks up the screens of users who connect with 
  309. other clients).  The solution we adopted was to start and end you messages 
  310. with a blank line, so people can tell when you have finished, and avoid 
  311. interrupting you once you have started.
  312.  
  313. Ñ Small Print
  314.  
  315. This program is free, don╒t bother sending me any money for this one, it 
  316. was only a days work anyway.  If you like it, send me an Email message 
  317. saying hello, or a postcard or something like that.
  318.  
  319. You may distribute Chat any way you wish as long as you don't charge for 
  320. it (reasonable download costs such as Compu$erve are ok I guess (although 
  321. who would call Compu$erve's download costs reasonable?)).  It would 
  322. probably be a good idea to keep this documentation file with the program, 
  323. but I'm hardly likely to check up on you now am I!  I don't guarantee any 
  324. support, but I always answer my Email (I'm not so good with snail-mail and 
  325. those horrible little bits of paper and such!).  If I don't answer Email 
  326. its because your message didn't get to me, or my reply bounced (so try 
  327. again, and include a valid Internet address if you can).
  328.  
  329. You MAY NOT distribute it on any magnetic media you charge for without my 
  330. express permission unless you charge less that US$3 for the disks (and no 
  331. membership costs).  I am sick and tired of seeing people selling 
  332. PD/Shareware software for ten dollars a disk without any reimbursement to 
  333. the authors.  If you are a legitimate user group, let me know and I'll 
  334. waive teh "no membership costs" restriction. 
  335.  
  336. Ñ Warranty
  337.  
  338.       There is absolutely NO warranty, guarantee, hint, suggestion or 
  339. anything else that would lead anyone to think that Chat do anything stated 
  340. in this documentation.  It usually does not destroy data (systems, 
  341. hardware, etc), and has sometimes worked on my Mac with System 7.0.  It is 
  342. highly unlikely that it will work with older systems (pre 6.0 anyway) or 
  343. with the 64k ROM.  It might work with the other models, but I don't have 
  344. them all, so I don't know (Anyone want to give me a IIfx (or one of those 
  345. new beasts?  How did they come up with such a terrible name???) so I can 
  346. check for compatibility?).  It might work with future versions of MacTCP 
  347. (after 1.1.1), but who can tell?  If it works on your system (or 
  348. especially if it doesn't!), send me a postcard or some Email and let me 
  349. know!
  350.  
  351. Ñ Fine Print
  352.  
  353.       Peter Lewis hereby disclaims all warranties relating to this 
  354. software, whether express or implied, including without limitation any 
  355. implied warranties of merchantability or fitness for a particular 
  356. purpose.  Does any one really read this stuff.  Peter Lewis will not be 
  357. liable for any special, incidental, consequential, indirect or similar 
  358. damages due to loss of data or any other reason, even if Peter Lewis or an 
  359. agent of his has been advised of the possibility of such damages.  In no 
  360. event shall Peter Lewis be liable for any damages, regardless of the form 
  361. of the claim.  The person using the software bears all risk as to the 
  362. quality and performance of the software.
  363.  
  364. Ñ Version History
  365.  
  366. Still to do -
  367.  
  368. Perhaps a password facility.
  369. Private message facility - nope, I've decided not to do this.
  370. Uniteruptable messages
  371. Log play back
  372.  
  373. v1.1.0
  374. ~Multiple channels
  375. ~New / command structure
  376.  
  377. v1.0.1
  378. ~Word wrapping lines.
  379.  
  380. v1.0.0
  381. ~Moved strings into resource fork.
  382. ~Improved strings
  383.  
  384. *****
  385. * The Author
  386.  
  387. Programs written by me:
  388. Anarchie 1.1.0 - Macintosh Archie client and FTP browser.
  389. Morpion 1.0.0 - A simple solitaire game.
  390. FTPd 2.2.0 - Macintosh FTP server.
  391. Daemon 1.0.0 - Macintosh multi-protocol daemon.
  392. Script Daemon 1.0.0 - Telnet->AppleScript gateway
  393. DeHQX 2.0.1 - BinHex decoder (use StuffIt Expander instead).
  394. Finger 1.3.7 - Macintosh Finger client/daemon.
  395. Talk 1.1.1 - Macintosh Talk client/daemon.
  396. MacTCP Watcher 1.1.0 - Display MacTCP state information.
  397. MacBinary II+ 1.0.2 - MacBinary II+ encoder/decoder.
  398. ObiWan 4.0.1 - Online help system.
  399. Bolo Finder 1.0.2 - Display the results from Mike Ellis' Bolo Tracker.
  400. Bolo RandomMap 1.1.0 - Generate a random map for Bolo.
  401. FetchNews 1.0.0b - Fetch News for use with NewsWatcher demo mode.
  402. Chat 1.1.0 - Multiuser primitive irc-like daemon.
  403.  
  404. The latest versions of my programs are available from:
  405. amug.org:/pub/ftp1/peterlewis
  406. redback.cs.uwa.edu.au:/others/peterlewis
  407. and French versions of some of my programs may be available from:
  408. ftp.sri.ucl.ac.be:/pub.
  409.  
  410. You can sometimes get the latest development versions from redback, but
  411. only use the development versions if you have some specific problem - in
  412. which case you should tell me, especially since the development versions on
  413. redback are often not the latest versions I have)
  414.  
  415. Send postcards, comments, bug reports, wishes, and payments to:
  416.  
  417. Peter Lewis,
  418. 10 Earlston Way,
  419. Booragoon, Perth, WA, 6154,
  420. AUSTRALIA
  421.  
  422. or by electronic mail to:
  423.  
  424. Internet: peter.lewis@info.curtin.edu.au
  425. Bitnet: peter.lewis%info.curtin.edu.au@cunyvm.bitnet
  426. UUCP: uunet!munnari.oz!info.curtin.edu.au!peter.lewis
  427. *****
  428.